
This is a complete list of additions, improvements, and bug fixes that have been made per version of FACTS Analyzer.
= Indicates a change that potentially alters results from models of
previous versions of FACTS.
Version 3.1.7.1 (2023-03-29)
- Authentication: Upgrade to .Net 4.8 in order to avoid use of unsecure security protocol TLS 1.0 for WebAuthentication.
- Authentication: New license server option for floating licenses.
Version 3.1.7.0 (2022-05-19)
-
Simulation: Fix for issue that prevented running models with Batch-logics with 'Start incomplete=true' and a warm-up time > 0.0 seconds.
Note: Outputs 'batchCount' and 'averageBatchSize' of a Batch-logic now include any batch finished after the warm-up time. Previously only batches started after the warm-up time were considered.
- Modeling: Fix for issue preventing the use of the model generation feature in version 3.1.6.
-
Modeling: Entering decimal numbers with a comma (',') as decimal separator in the Property panel will now be logged as an error.
Note: Previously a number entered as '10,3' would evaluate to '3' instead of '10.3' during simulation.
- Modeling: Fix for issue preventing the connection of two objects when a model had at least one empty Flow selection.
Version 3.1.6 (2022-02-03)
-
Modeling: Improvements and fixes to the
Input Data Interface:
-
Added support hierarchical mappings, i.e. mapping to objects nested in
Custom components and/or
Selections.
Note: The automatic mapping have a better chance of finding a correct match if the full path of the FACTS object is entered in the input file.
- Fixed mapping of variant independent processing times together with variant dependent once, i.e. when a worksheet contained both a single column for setup times and some columns for matrix-style setup times.
- Fix so that the row references specified in Errors/Warnings/Information are 1-based and not 0-based as before.
- Fix reporting of Errors/Warnings/Information when updating a model. Previously, an Error could in some cases be reported as Information.
-
Added support hierarchical mappings, i.e. mapping to objects nested in
Custom components and/or
Selections.
- Modeling: Added confirmation dialog when deleting a selection of more than one object.
- Modeling: Fix exception when parsing time format 'DDD:HH:MM:SS.XXX' where the input string had too many decimals, i.e. the decimals by them self represented an integer larger than the maximum value of a 32-bit integer.
- Modeling: Fix crash when 'Ctrl/Scroll'-zooming while editing a Note.
- Modeling: Limit precision of Variant-dimensions to mm (i.e. 3 decimal places).
- Modeling: Prevent deletion of Entrance and Exit of Custom components.
- Modeling: Prevent the use of 'Time reference=processing' for Disturbances of Resources, since it isn't supported.
-
Modeling/Simulation: Updates to the Batch-logic:
- Added 'Incomplete timeout' used when 'Start incomplete=true' to specify a maximum waiting time for additional matching parts to arrive. Used to prevent deadlocks when required number of parts can't reach the Batch-logic.
-
Fix bug when 'Start incomplete=true' is for batches that are created of assembled parts. The batch id was wrongly set on the container of the assembly instead of the identity of the assembled parts when such a part got added to a already started batch. This bug could result in a deadlock where no new batches where created when a batch logic was connected to Stores, due to the batch records of what reached the Stores was corrupted.
-
Simulation: Fixes for MaxWIP:
- Handle parts that are deleted before they exit a MaxWIP by decreasing the WIP and logging their contribution to the WIP once they are delete.
- Change how WIP is calculated for specific Variants of a MaxWIP. Parts that only exit a MaxWIP (i.e. doesn't go through any of the entrance objects) are now neglected. Previously they had a negative contribution to the overall WIP reported for the Variants of those parts.
-
Simulation: Fix occupation logging of Conveyors. A missing update for when a Conveyor got empty caused empty time to be logged as occupied and as a result a too high WIP was reported.
-
Simulation: Prevent constant optimization inputs from overwriting the corresponding values entered in the model when running single Experiments. The constant optimization inputs should only have an effect on Optimizations and not single Experiments.
- Animation: Fix issue that caused the displayed simulation time in the Animation and the Event list to be wrong when the simulation was set to start on a time other than Monday at 00:00 o'clock.
- Animation: Times of the Trace-log is now exported as seconds relative to the start of the simulation when saved.
- Animation: Sorted breakpoints and added new and missing once (BatchTimeOut, TimeCallback and TriggerSynchronizedExits).
-
Optimization: Fixed bug where output 'Working time' of nodes got the 'Waiting time' value instead of the 'Working time' value.
- Optimization: Help-file updated with more details of how to formulate input constraints.
- Application: Increase timeout for communication with the backend. The previously too short timeout could leave the backend in a corrupted state.
Version 3.1.5 (2021-02-03)
- Modeling: Added a new feature to generate a model from an Excel-file.
-
Modeling: Improvements to the
Input Data Interface:
- Rework of results dialog. Encountered issues during parsing of input data are now divided into three levels; Errors, Warnings, and Information.
- More informative error message when a previously mapped input file isn't found.
- Fix exception when trying to remove files from empty list 'Loaded Input Files'.
- Modeling: Made it possible to change the name of a created Template by selecting it in the Template panel and then change its name in the Property panel.
-
Simulation: Changed library used for random number generation. Models with stochastic elements (e.g. statistical distributions) can have slightly changed outputs due to this.
-
Simulation: Fixed issue with 'Accumulating=false' of Source/Demand that could lead to an infinite loop of creating new entities.
-
Simulation: Fixed issue with 'Synchronize exits=true' of ParallelOperation where the last entity to finish processing left the ParallelOperation before the ones that finised before it.
- Simulation/Optimization: Fixed issue where experiments and optimizations would freeze and never finish for models that have Custom Outputs but doesn't have Objectives.
-
Optimization: Variable names of
Inputs, Outputs, and
Custom Outputs
are now validated. Allowed characters are letters, numbers and '_'.
In addition names must start with a letter.
Note: Fix in Optimization setup by replacing any invalid character used in a name with a valid one.
- Optimization: Fixed issue preventing the use of Interval and Duration parameters of a disturbance as inputs to an optimization when the type of the disturbance was 'Cycles'.
-
Optimization: Fixed issue with Latin Hypercube sampling when used with integer variables. The lower and upper limits of integer variables weren't as likely to be included as values between the lower and upper limits.
Version 3.1.4 (2020-03-23)
-
Modeling: Minor fixes related to
Input Data Interface:
- Added support for missing discreteuniform, binomial, and negativebinomial.
- Added specific pattern 'Assembly Variant' to match with Variants used in Assembly tables to prevent confusing warnings.
- Simulation: Fix for bug introduced in 3.1.2 that could cause models with entry logic objects such as MaxWIP to crash.
- Simulation: Fix for bug introduced in 3.1.2 that could cause models with Templates to crash.
Version 3.1.3 (2020-03-12)
-
Modeling: Added new functionality and made some fixes to the
Input Data Interface:
- Added support for Creation tables, i.e. for input data related to the creation of variants in the Source and Demand object.
- Added support for Assembly tables of the Assembly object.
- Improved warning messages when input data is missing or in an incorrect format.
- Simulation: Improved performance, i.e. faster simulations.
-
Optimization: Fixed bug that slowed down optimizations. It caused the
runtime for a single simulation to take longer and longer time the
more simulations the optimization completed.
Note: Results from optimizations were unaffected by this bug.
- Application: Microsoft Visual C++ Redistributable is now shipped with FACTS Analyzer Professional and no longer a prerequisite.
- Application: Fix issue that prevented several instances of FACTS Analyzer Professional to be run at the same time.
Version 3.1.2 (2019-12-17)
- Animation: Fix a bug when repeated single steps could result in the simulation starting.
Version 3.1.1 (2019-12-13)
-
Authentication: Added 'Forgot your password?' to the
authentication prompt.
Note: It is also used to change password.
-
Modeling: Fix duplication of objects in a Selection when it was loaded.
- Modeling/Simulation: Added option to force the container in a Disassembly to be the last entity to exit.
- Simulation: Fix crash caused by a Source or a Demand trying to create a new variant from a depleted Variants table.
- Animation: Fix for entities and their labels not being displayed or displayed multiple times.
-
Animation: Small fixes for the display of the simulation time.
- The simulation time is now always displayed with 3 decimal digits.
- Improved handling of fast updates of the simulation time.
-
Optimization: Added algorithm setting 'Store all replications'. When
True all replicated values will be stored in the database. Useful
for some post processing analysis, e.g. significantly non-dominated
sorting using
WILCOXON hypothesis testing.
Note: If used the size of the database will grow significantly faster.
- Optimization: Experiment Browser updated to version 2.6.3, see Change log for more details.
Version 3.1.0 (2019-08-12)
- Modeling: Added support for background images.
-
Modeling: Added new functionality and made some fixes to the
Input Data Interface:
- Added support for statistical distributions.
- Made it possible to map several headers at once, referred to as 'batch change'.
- Handle exception caused by trying to access an Excel-workbook that is being edited in Office365.
- Fix warning about removed input-file. Previously warnings about missing input-files were ignored when an update was triggered through the menu-shortcut or if the input-file was removed while the Input Data Interface-dialog was open.
- Modeling: Added toggle in the Toolbar to hide/show logic connections in the model.
- Modeling: The character used as column separator in the string representation of tables in the Property Panel was changed from ';' to '@'. This was done since ';' is used as parameter separator in the string representation of statistical distributions.
- Modeling: Various minor improvements to the responsiveness of the GUI.
- Modeling: Fix exception when adding skill without a name in the Resource-logic.
- Modeling: Improved responsiveness/speed when deleting objects by disabling error checking when deleting objects.
- Modeling: Improved speed when loading a model by avoiding repeated error checks.
- Animation: Fixed so that the Steady-State-chart of the Animation-view display moving averages even for the first samples where there isn't enough samples to meet the window-size used.
- Animation: Fix initialization of Trace and Log interval to avoid unexpected behavior.
-
Animation: Made some improvements to the GUI of the
Animation-view.
- The simulation time is now display both as an absolute time (date and time of day) and a time relative to the chosen start time of the model.
- Minor updates to the Settings & Controls-dialog.
- Adjusted the 'Simulation speed'-slider of the Settings & Controls-dialog, to give it a more "linear" feeling over the entire range.
-
Modeling/Simulation: Added new functionality to the
Source-object:
-
Option 'Accumulating' to tell whether or not the Source should
accumulate creations that failed when the Source wasn't
operational (i.e. failed, unplanned or paused).
Note: Default True matches earlier behavior of the Source.
-
Option 'Accumulating' to tell whether or not the Source should
accumulate creations that failed when the Source wasn't
operational (i.e. failed, unplanned or paused).
-
Modeling/Simulation: Added new functionality to the
Batch-logic:
-
Option 'Start incomplete' to tell whether or not the Batch-logic
should be allowed to start batches that aren't available in
sufficient quantities.
Note: Default False matches earlier behavior of the Batch-logic.
-
Option 'Prioritize complete' to tell whether or not to give
priority to batches are available in sufficient quantities.
Note: Only has an effect when 'Start incomplete' is True.
-
Option 'Start incomplete' to tell whether or not the Batch-logic
should be allowed to start batches that aren't available in
sufficient quantities.
-
Modeling/Simulation: Added new functionality to the
Demand-object:
- Option 'Use units' to tell whether or not the Demand should consume units or Variants.
-
Option 'Delete variants' to tell whether or not a Variant should
be delete once all units have been consumed.
Note: 'Use units' need to be active for this to have any effect.
-
Added support for both
disturbances and
Timetables.
Note: Any demand created when the Demand-logic isn't operational (i.e. failed, unplanned or paused) will not be considered.
-
Modeling/Simulation: Added CYCLES as failure type for
disturbances. With CYCLES
the Interval
represents the number of
entities that will be processed
before the next failure occurs.
Note: Detailed output data for individual disturbances were also added.
Modeling/Simulation: Changed behavior for resources that can be interrupted from their current task on an Operation. Previously they were only released from their current task by another task with higher priority, but now they will also be released from their task when they aren't operational (i.e. failed, paused or unplanned). With this an available operational resource can resume where the other resource left off, for instance when one Shift ends and another begins.
Simulation: Fix bug related to the Timetable-logic that caused breaks that occurred after midnight to be ignored.
Simulation: Disturbances with 'Time reference' PROCESSING are now handle indirectly by monitoring the state of the Object.
- This addresses a bug related to Disturbances with 'Time reference' PROCESSING that could cause an entity to leave an Operation even though it wasn't finished processing the entity since the processing was interrupted by for instance a failed Resource.
Simulation: Fixed precision bug related experiments that failed with message 'failure reference processing out of sync'.
Simulation: Fix bug related to how the Source created variants when the simulation was set to start on a weekday other than Monday. Previously the source would erroneously be able to utilize the time from Sunday midnight to the start of the simulation for creating variants.
Simulation: Fix so that times specified in a delivery table actually are relative to the start time of the simulation and not to Sunday midnight.
-
Simulation: Improvements related to the
Creation setting.
- Improved performance when initializing Sources and Demands with 'Limit=Number' and 'Number' is set to a very large number.
Fixed case when 0 variants should be created, i.e. when 'Amount=0' in the Variants table.
Changed the way in which a limited number (either Limit='number' or Cyclic='False') of entities are created.
- Previously: All entities where created up front with an absolute time of creation. They were then fed to the model at their respective absolute creation times.
- Now: The creation will start a time 0 and then the desired number of entities will be created at relative times given by the selected Interval, with respect to the time of the last attempted creation.
- Change name of option 'Batch' to 'Batch Amount' and also added an option 'Batch Table' that batch/creates the entire Variants table at each and every Interval.
-
Simulation: Improved performance (i.e. faster simulations):
- When scheduling out events for blocked parts. Significant performance gain for models with Stores that have a large capacity.
- When locating and removing entities located on Stores.
- When logic objects trigger block lists of connected objects.
- When a Sink has a process time of 0 seconds entities will no longer get an out event when entering the Sink. Significant performance increase when large demands, that are connected to a Sink, should be satisfied. In the Animation this change means that these entities will not show up on the Sink before leaving the model.
- For the Demand-logic demands that occur at the same time are now combined and created all at once.
- For the Batch-logic avoid event to start a new batch when it isn't possible, i.e. none of the variants are available in sufficient quantity to meet the their minimum batch size.
Simulation: Fixed bugs related to the Resource-logic:
- With 'Skills first' and 'Response time > 0' a deadlock would happen if a requested resource became available when the entity responsible for the request were located on a failed object.
- Tasks requiring more than a single skill ('Amount > 1') would not have resource allocated correctly resulting in a deadlock.
- Fixed crash caused by not having information about the current variant for setups that were resumed after being interrupted during the response time of the Resource.
- Fixed crash for the case when 'Skills first' is used and resources are requested for an entity located on a Flow Object that isn't operational and hence not able to leave that object, by avoiding such requests until the object gets operational again.
Simulation: Triggering a block list on a Flow Object that cannot accept entities previously did nothing even though entities were allowed to move to any successor. This is now fixed and entities on the block list will be considered for a move even in this case.
Simulation: Fix for statistical distributions with only lower- or upper bound specified. Previously bounds were ignored if only one was specified.
- Experiment: Added Custom Outputs to the Output selection view of the Results view and added both Objectives and Custom Outputs to the Detailed outputs-table of the model.
- Experiment: Added outputs for individual disturbances to the Detailed outputs-table of the Results view.
-
Simulation/Optimization: Added database path to
Tools->Options making it possible
to change database.
Note: Starting FACTS Analyzer with an old database the user will need to confirm an upgrade of the database or provide a path to a new database.
Note: Upgrading a database will prevent it from being used with an earlier versions of FACTS Analyzer requiring an older database version.
-
Simulation/Optimization: Fixed so that the name of the user
responsible for an experiment is shown in the Experiment Browser.
Note: The database was updated to handle this. Older databases will need an upgrade to function with this version of FACTS Analyzer. This is handled at start-up see previous note.
- Optimization: Fixed bug that prevented Full-Factorial experiments to work with models using MCS-variables.
- Optimization: Fixed bug that prevented loading of experiments without integer variables.
- Optimization: Better error handling for use of optimization variables that aren't defined in the optimization problem. Now the name of the missing variable will be included in the error message.
- Optimization: Experiment Browser updated to version 2.6.2, see Change log for more details.
- GUI: Fixed label overflow issues, where label text could hide part of input fields.
Version 3.0.5 (2018-09-19)
Simulation: Prioritize variant assembly before units assembly.
Fix for multiple assembly tables with contradicting use of variant and units assembly for a single type of variant. For these cases priority will be given to tables where entities are consumed as variants (i.e. with use_units = false).Simulation: Fix for handling parallel exits of units.
In case not all units are consumed upon exit, ensure that exit to additional successors are tried.-
Modeling: Improvements to the
Input Data Interface:
- Better handling of files on network shares.
Note: In cases when the model file is located on a network share a message "Failed to set current directory" can appear indicating that done mappings need to be redone. This is not necessarily the case. Open the Input Data Interface and check made mappings, if they are OK there is no need redo them.
This issue will be addressed in the next update. - Fix for crash when a previously mapped sheet was removed from an Excel-workbook.
- Better handling of files on network shares.
-
Modeling: Added confirmation for when the application is closed to
prevent loss of data.
- Animation: Fixed initialization of 'Breakpoints enabled' (see Animation settings). Previously this setting wasn't conserved in the DES-engine when moving back and fort between the Model-view and Animation-view.
Version 3.0.4 (2018-06-27)
Simulation: Fix for shifts that span over midnight. Previously such shifts would skip a week, i.e. at the end of each Sunday the shift would be unplanned for an additional 7 days.
Simulation: Fixes for the behavior of 'Skills first' of the Resource-logic.
- Added handling of invalidated resource requests. Previously resource requests made to nodes where the entity didn't end up weren't undone.
- Prevent entry when required resources are allocated but not ready. Previously externally triggered, e.g. by some other logic, out events could circumvent the resource ready check.
- Simulation: Faster simulations by improved handling of block lists.
- Modeling: Fix for using the Input Data Interface with relative paths.
- Experiment: Changed the color of the 'WaitingForResource'-state from light-gray to orange in the results chart Utilization.
Version 3.0.3 (2018-04-13)
- Animation: Added custom scaling of Y-axis in Output-dialog, i.e. the steady-state analysis.
- Modeling: Fix "Name must be unique."-warning when adding copies of Templates to a model.
-
Modeling: Allow '(' and ')' in expressions used to define parameters
of
statistical distributions.
Example: exponential((345.023+23.05)/(5*1.04))
- Modeling: Added support for setup times to the Input Data Interface.
-
Modeling: Fixed relative paths for input data documents mapped
through the
Input Data Interface.
Note: Any saved mapping need to be redone (i.e. remove mapped documents and add them again) in order for the relative paths to be correct.
Modeling: Changed data type on the length of a Conveyor from integer to real.
- Experiment: Fix crash for experiments with a large amount of replications.
Optimization: Fix issue that ignored boolean variables added to an optimization problem.
- Experiment/Optimization: Notify user about erroneous expressions defined in the optimization problem.
Version 3.0.2 (2018-02-21)
- Modeling: Fixed mapping of variant specific processing using the Input Data Interface. Previously, these times were duplicated on every update.
- Optimization: Fixed mismatch of precision when parsing Multiple-Choice-Set variables. It prevented optimization with MCS-variables with more than 4 digits precision. A workaround for this bug is to limit precision used in models to 4 digits.
- Optimization: Experiment Browser updated to version 2.5.10, see Change log for more details.
Version 3.0.1 (2018-02-09)
- Modeling: Input Data Interface fix for parsing of certain Excel cell formats. A workaround for this bug is to format all cells as text.
- Simulation: Improved error handling for running single experiments, now a dialog box containing the error is displayed.
- Optimization: Add state WaitingForResource as a selectable output.
- Installation: Added support for environment variables in the database path under Installation, e.g. %HOME%.
Version 3.0.0 (2018-01-24)
- Modeling: Added new object Resource enabling modeling of processes that need certain skills to perform either processing, setup or repair.
- Modeling: Fix rare crash in checking the validity of a link.
-
Modeling: Added a new feature called
Input Data Interface
located under the Tools-menu. It
enables model settings to be mapped to an external data source, e.g.
a Microsoft Excel workbook. Once mapped the mapping is saved in the
model and mapped settings can be updated through the menu item
'Update Model' in the Tools-menu.
Note: The mapping is smart in the sense that it tries to match column and row headers to settings and objects in FACTS even though names doesn't match exactly.
- Modeling: Deletion of variants are now forwarded to all Components used in the model.
- Modeling: Right-Click on a flow now selects that flow in the Flow Panel, previously a Left-Click was needed for this.
- Modeling: Increased GUI responsiveness by preventing excessive error controls, e.g. loading models and moving and deleting objects in the model is now a lot more responsive.
- Modeling: Fix error control for empty Order table of the Facade logic.
- Animation: Fix for Breakpoints being disabled when going back and forth between the animation step and the modeling step.
- Animation: The throughput Steady-State chart of the Animation step now uses throughput per hour as unit rather than throughput per Log interval.
Simulation: Added all Flow Objects and Resource-logic to the Shifting Bottleneck Detection.
Note: This will effect results from the shifting bottleneck detection. Results should now be more trust-worthy since influences from all objects, not only Operations/ Assemblies/ Disassemblies/ ParallelOperations, are considered.
Simulation: Changed state-handling for Stores to match that of Buffers, meaning that Stores no longer have a Working-state.
- Simulation: Added support for statistical distributions
for amounts in the delivery table
and sequence table.
Note: Older models will need converting when loaded to support this new feature.
Simulation: Fix for non-uniform setup times on Sinks. Bug prevented use of setup times specified in a table on Sinks.
Simulation: Fix for delivery table. Now delivery times are sorted before a simulation is started, i.e. previously if times weren't entered in correct order, incorrect (order wise) delivery times weren't met.
- Simulation: Fixed memory leak related to Failures. For models with many failures it could make FACTS run out of memory, especially if running an optimization.
- Results: Fixed sort on order in model of bars in the Result chart. Now the full path is used to identify an object rather than just its name.
-
Optimization: New platform implemented in C++ replaced old platform
implemented in C#. Algorithm changes:
New
- NSGA-III
- DE (Differential Evolution)
- PSO (Particle Swarm Optimization)
- CMA-ES (Covariance Matrix Adaptation - Evolutionary Strategy)
- NEWOUA (New Unconstrained Optimization Algorithm, by M.J.D. Powell (2004)).
- Sequential-Bifurcation
Removed
- Random Search
- MME NSGA-II
- Steady State GA
Note: A database import is needed to view experiments and optimizations run on prior FACTS versions. The option to import an old database is located under the Tools-menu.
- Optimization: Fix issue with optimization inputs with invalid values, effecting both the addition of such inputs and loading of models with such inputs.
- Optimization: Added new MuParser functions 'index' and 'num_values' for use with MCS-variables.
-
Optimization: Improvements and additions to
Setup SCORE:
- Supports for multiple levels of improvements and uses new MuParser functions 'index' and 'num_values' in Custom outputs for calculating a normalized level of improvement.
- Changed Crossover to 'Uniform' and Mutation 'Uniform range' for MCS input variables, since they improve the performance of optimization problems with MCS input variables with few values.
- Optimization: Experiment Browser updated to version 2.5.7, see Change log for more details.
Optimization: Standard deviation outputs are no longer available to use in the formulation of optimization problems. Outputs are considered per replication and so are formulas in which they are used.
- XML: Model file format updated to handle random amount for variant creation.
Version 2.8.1 (2017-06-05)
- Dispatch: Fix for sorting of blocked parts when using dispatch SST. In the sorting setup times between the same type of variant was not always 0. This bug only effected the sorting not the actual setup times used.
- ParallelOperation: Fix for dispatch caused by missing information about the last variant that was processed, now the last variant on the Parallel Operation is the last variant that exited.
- Modeling: Increasing GUI responsiveness by improving the performance of model settings validation.
- Simulation: Fix for crash during reset of a model after exception about missing processing time for a variant.
Version 2.8.0 (2017-05-04)
- ParallelOperation: New functionality for supporting synchronized processing of parts, e.g. for modeling a Double Spindle machine.
-
ParallelOperation: Updates to animation and output data:
- The intermediate state, that determines the visible state in the animation, of the Parallel Operation was updated.
- Utilization and Bottleneck data is now logged and displayed per internal operation of the Parallel Operation and at the end of the simulation averaged as an output for the Parallel Operation itself.
- ParallelOperation: Fixed crash when using EPT on a Parallel Operation.
- Conveyor: Made it possible to set a maximum capacity on the Conveyor by adding two new settings Use capacity and Capacity.
- Simulation: Fixed issue with start dates other than Sunday midnight. It made breaks etc. of the Timetable occur with an offset, i.e. not at the desired time.
- Modeling: Added support for integer and real model variables, for use in settings directly or possibly as part of a formula similar to that of objectives. For instance, useful when several objects share some setting, e.g. processing time or capacity. By having it as a variable it can be changed for all objects at once, especially useful in more complex optimization problems.
- Modeling: Enhanced Notes by adding a syntax that can display properties of objects, i.e. processing time or capacity, within a Note.
- Modeling/Animation: Max and current number of parts were added as status text above the Conveyor and the Parallel Operation.
- Results: Added object filters to the Occupation-, Utilization-, and Bottleneck-chart.
-
Installation: FACTS Analyzer is no longer dependent on Microsoft
Visual C++ Redistributable for Visual Studio 2010 SP1, see
install instructions.
Note: Microsoft Visual C++ Redistributable for Visual Studio 2015 is still required.
- Optimization: Experiment Browser updated to version 2.4.3, see Change log for more details.
Version 2.7.1 (2016-12-19)
- Conveyor: Fix issue with optimization input 'Length' that prevented Experiments and Optimizations of models with that.
- Results: Added Conveyor to the Occupation-chart.
Version 2.7.0 (2016-12-01)
- Modeling: Added new object Parallel Operation for making the modeling of parallel operations simpler.
- Modeling: Made it possible for users to add their own information to objects through User attributes.
- GUI: Fixed inconsistent start position of edit dialogs.
- Optimization: Fix issue with the SBX-crossover that resulted in one child getting all low values and one child getting all high values of the two parent solutions.
- Optimization: Fix bias towards values with low indexes for MCS-variables during SBX-crossover and BLX-α-crossover.
- Optimization: Added 'Input proportional mutation probability (1/n)' setting and made it the default setting for mutation, i.e. the mutation probability will be set to 1/n where n is the number of input variables.
- Optimization: Experiment Browser updated to version 2.3.4, see Change log for more details.
Version 2.6.6 (2016-11-07)
- Simulation: Fix bug with the Conveyor which could lead to the open event never being processed, resulting in a deadlock.
Version 2.6.5 (2016-10-05)
- Installation: Fix Click-Once deployment. Installation of prerequisite 'Visual C++ "14" Runtime Libraries (x86)' functional again.
Version 2.6.4 (2016-06-21)
- Modeling: Fixed bug with incorrect copy of Sources, the Number property (under the Creation-property) of the copies was set to its default value 1.
Version 2.6.3 (2016-06-10)
- Simulation: Fixed bug with warm-up being 0 if an animation was run prior to an experiment.
Version 2.6.2 (2016-05-31)
- Modeling: Visual improvements to the Object Panel. Clipping of long names added so that objects are displayed in a consistent manner.
- Simulation: Fixed 'Show results' and 'Load model' of previously run experiments listed under Results in Experiment. Included support for conversion of older models to the latest model file format.
- Simulation: Fixed crash for sequential cyclic Variant tables with 0 amount.
Version 2.6.1 (2016-04-21)
-
Simulation: Fixed bugs with facades and orders.
- For orders of assembled parts with assembly identity other that the container the destination was set to the container instead of to the assembly identity.
- Deadlock of ordered parts that needed to pass some flow objects before they could reach their destination.
- Simulation: Fixed bug with units assembly that always assembled the needed amount of units no matter the available amount of units of the entering part.
- Simulation: Fixed bug in WIP calculation of individual variants. The lifespan of parts that were deleted in the model (i.e. not through a Sink) were not considered.
Version 2.6.0 (2016-02-19)
-
Modeling: New objects for increased support of material handling added;
Conveyor,
Facade, and
Order.
Note: The addition of these objects also brought with them new functionality to the following objects.
- New settings Length, Width, and Units for Variants.
- New 'wild card' Variant named Any Variant.
- Destination disassembly, No disassembly, and Overtake support for the Disassembly.
- Force assembly setting added to the Assembly object and new assembly options Unit, Area, and Generic Assembly added to the Assembly tables.
- New Dispatching rule Order.
- Modeling: Refactored the check for valid connections and added toggle for detailed or short error messages.
- Modeling/Simulation: Added support for statistical distributions Weibull and Gamma.
- Simulation: Added a logic object called Failure Zone that is used for linking disturbances between objects.
- Simulation/Optimization: Added support for Multiple Disturbances.
- Optimization: Speed-up of the loading of SCORE settings.
- XML: 'Use units'-column added to Assembly tables. Old models will automatically be converted to this new format once loaded. The old model will be saved with the suffix '_backup'.
Note: None of the new objects or changes they brought with them will effect the behavior of old models.
Version 2.5.7 (2015-06-27)
- Optimization: Fixed bug with the setup of a SCORE optimization problem. EXTENDEDTIMETYPE's are now rounded to 3 decimals when added as optimization inputs.
- Help: Added details of how to to use the SCORE Frequency Diagram in the Experiment Browser.
- ExperimentBrowser: When two or more evaluation lists or 2D diagrams are linked together the selections are shared between the diagrams.
Version 2.5.6 (2015-06-24)
- ExperimentBrowser: Added frequency diagram for SCORE optimizations.
Version 2.5.5 (2015-05-05)
- Animation: Fixed bug where the breakpoints would disappear when the breakpoints form was closed and then reopened.
- Animation: Fixed crash in the node select form.
Version 2.5.4 (2015-04-27)
- Simulation: Fixed bug with the exit strategy weighted_sequence_per_part. A model which used at least two weighted_sequence_per_part would get wrong results for all replications except the first one.
Version 2.5.3 (2015-03-10)
- Simulation: Fixed bugs which prevented the exit strategies: weighted_sequence and weighted_sequence_per_part from working properly.
- Modeling: Fixed bug where the new command did not reset the model properly.
Version 2.5.2 (2015-02-26)
- Animation: Fix bug which could cause animation to occur in the modeling view.
- Animation: Fix issue which caused the simulation speed to be reduced while the settings window was open.
- XML: Conversion of wrongly formatted Shift start and end times to correct format 'HH:mm'. This bug was introduced along with a fix in version 2.5.0.
- Experiment: Fixed bug which prevented an experiment on models with many optimization input-/output-parameters.
Version 2.5.1 (2015-02-18)
- Modeling: Fix bug that prevented loading of models with Timetables that was not used on any objects.
- Modeling: Further improvements of the Timetable Shifts-editor to better handle different culture settings of the OS.
Version 2.5.0 (2015-02-13)
- Modeling: Added weights to Connections that are used in new weighted exit strategies. For example these allow the user to specify that 10 % of the variants should go to one successor and that the other 90 % should go to another successor.
- Modeling: Added Active property to Connections. For instance this can be used to turn connections on and off in an optimization.
- Modeling: Added Right-Click option 'Select All' for objects in the Model view for easily selecting several objects of the same type as the clicked object.
- Modeling: Added default value to the distribution edit dialog for the case when editing distribution properties (e.g. Process time) that have no value set.
- Modeling: Updates to the Timetable Shifts-editor to work better for different culture settings of the OS.
- Modeling: Small fixes of the GUI (e.g. positioning of OK/Cancel-buttons).
- Animation: Redesign of the animation Settings and Controls-dialog.
- Animation: Added breakpoints for debugging of models.
- Animation: Added trace for debugging of models.
- Animation: Added option to show a compact view when 'Show variant names' is active.
- Animation: Updates to the formating of time strings during an animation.
- Simulation: Fix bug with assembly of assembled parts with Assembly identity other than the container. It could cause the container to disappear.
- Simulation: Fix bug when a Timetable was used on an object with Disturbance with Failure reference set to OPERATIONAL or PROCESSING. It could lead to too many failures on that object.
- Simulation: Fix bugs that in rare cases could ignore limit number set in a Creation table.
- Optimization: Added automatic setup of SCORE optimization reached from work flow step Experiment.
- Results: Added display options 'Show Full Path' and 'Exclude In-Active' for the bar charts, see Results view for more details.
- Results: Fixed bug for sorting bars in a bar chart according to the corresponding objects order in the model, Results view for more details.
- Results: Made it possible to navigate a model in the Model view.
- Results: Made it possible to select all or a group of objects in the Model view in order to show a table of all their outputs in the Results view. From this table the information can be copied to for example Microsoft Excel for deeper analysis.
- XML: Namespace changes in the XML-schema. Old models will automatically be converted to this new format once loaded. The old model will be saved with the suffix '_backup'.
- Experiment Browser: New version 2.1.10 (Previously OPTIMISE Browser).
Version 2.4.2 (2014-12-11)
- Simulation: Fix bug that prevented the run of experiments for some models including optimization input variables, due to a data type conversion exception.
- Simulation: Fix bug that could create a infinite loop with nodes that has the failure reference set to processing.
- Optimization: Fix bug in the optimization input selection dialog, Select variable. It is no longer possible to select variables that are all ready included in the optimization problem, with the exception of a variable that is being edited.
Version 2.4.1 (2014-11-21)
- Modeling: Fix bug with the copying of Flow selections and Flow groups. Custom components with these features could not be used, prior to this fix.
- Modeling: Fix bug where names of objects could get a suffix added while the model was being loaded.
- Optimization: Fix bug in the optimization input selection dialog, Select variable. The disabling of the OK-button did not work as intended. If the OK-button was pressed while no input variable was selected the input would get corrupted.
Version 2.4.0 (2014-11-04)
- Simulation: Assembled parts are now treated as one unit identified by the assembly identity. Additional information about objects effected by this is found in the first 'Note' in Assembly.
- Simulation: A movable unit that exits a MaxWIP without having entered the MaxWIP (i.e. enters in the middle) will now decrease the WIP. Before this change that movable unit would have been ignored. Note that means that negative WIP stats are now possible.
- Simulation: Fix bug where a Source or Demand that was set to limit on the number of movable units would create them at incorrect simulation times.
- Simulation: Fix bug where a Batch with parallel processing enabled could prematurely start a new batch.
- Simulation: Fix bug where a Batch could create a new batch even though another logic stopped it from entering.
- Simulation: Added new outputs for Demand nodes, total backlog, total tardiness and average tardiness (both per Demand logic and per variant of that logic).
- Simulation: Fix bug that caused incorrect stats for WIP on Kanban nodes.
- Simulation: Allow for a small grace period when determining if a movable unit enters a Takt at the takt start time. If it tries to enter after the takt is started it has to wait until the next takt cycle.
- Animation: An Assembly now assembles the movable unit immediately when all parts have entered. This is only a animation change, it has no functional impact.
- Modeling: Added limit tables to MaxWIP and CriticalWIP, i.e. possibility to split allowed WIP between different variants.
-
Modeling: Updates to the Navigation panel.
- Only possible to create/edit one template at the time.
- Saving a template no longer automatically reverts to model, instead it reverts to the level from which the create/edit template was triggered.
- Save/cancel the creation/editing of a template is now only possible from the create/edit view/level.
- Modeling: Fixed a bug where object names ending with numbers were messed up when an object was copied.
- Modeling: Added WIP-labels to MaxWIP and CriticalWIP in the model view.
- Optimization: Added missing WIP output per variant.
-
Optimization: Fixes for disturbance optimization inputs.
- Correction of xPath for Sources and Sinks.
- Added inputs for duration and interval.
Version 2.3.4 (2014-10-02)
- Animation: Fixed bug which caused the warm-up time, from the experiment settings, to be active during the animation. This caused the statistics to be reset during the animation, leading to incorrect data in the output graphs.
Version 2.3.3 (2014-09-24)
- Simulation: Added support for specifying when the simulation should start (date and time of day).
- Simulation: Fixed issue where a Disturbance with Time reference set to 'Processing' would not have any effect, i.e. no failures on the object.
- Simulation: Fixed shifting bottleneck issue when a node had overlapping states, unplanned and failed, it was counted as active. When in fact is should have been inactive.
- Simulation: Fixed issue where processing (dwell time) on buffers where not counted during failures.
- Simulation: Fixed issue where a Takt move was allowed even though one or more of the operations in the Takt where failed.
- Modeling: Shifts are now allowed to end stretch over midnight, i.e. when specified the end time is less than the start time of the shift.
- Modeling: Updated GUI for editing shifts of Timetable objects.
- Optimization: Added support for deleting all variables under Inputs/Outputs and Formulas by pressing "cross"-button on the header row.
- Other minor bug fixes.
Version 2.3.2 (2014-06-02)
- Simulation: Fix a couple memory leaks.
- Simulation: Fix crash with store.
- Simulation: Fix issue where two shifts couldn't stop and start on the same time.
- Modeling: Fixed shift overlap issue in Timetables, where shifts on different days were erroneously detected as overlapping.
Version 2.3.1 (2014-04-25)
- Optimization: Added the ability to select multiple variables of the same type at once when setting up a optimization problem. See Select variables reached from Add Inputs and Add Outputs under Inputs and outputs.
- Simulation: Fix issue when a node had failure reference set to operational and it also had a timetable. This could lead to unplanned periods being skipped.
Version 2.3.0 (2014-04-22)
- Optimization: Added support multiple-choice set input variables, these are added/defined through the Select variable-form.
- Optimization: Added support for Custom Outputs under Formulas.
- Optimization: Remove restriction that an input can only be evaluated once.
- Animation: Switching work flow step or closing FACTS is now prevented while animating.
- Simulation: Fix for error caused by not adding Takt connections in the same order as the material flow.
- Modeling: Fixes to the ctrl-drag copy that made copied links invalid.
- Modeling: Timetables connected to Sources are no longer logged as errors.
- Modeling: Updates to the FlowControl including updated icons and renaming of flows in the property panel and default flow numbering is no longer global.
- Modeling: Default value of MTTR changed from 0 minutes to 1 minute in order to prevent erroneous optimizations.
- Simulation: Fix issue with timetable and some specific failure settings.
- Other minor bug fixes.
Version 2.2.20 (2014-04-14)
- Simulation: Fix crash caused by extra out events, this can happen when a node, in a takt, is setting up and a failure occurs.
Version 2.2.19 (2014-04-01)
- Simulation: Fix crash on models that have parts that can leave a sink with assembled parts on it.
Version 2.2.18 (2014-04-01)
- Simulation: Fix crash on models with assembly nodes.
Version 2.2.17 (2014-03-31)
- Simulation: Scale the beta distribution with the lower and upper values.
- Modeling: Fix for bug that made it impossible to add a variant to a flow without variants but with at least one connection.
Version 2.2.16 (2014-02-07)
- Simulation: Fix bogus disruption begin event on nodes with no failures set but with failure reference set to processing.
Version 2.2.15 (2014-01-24)
- ClickOnce: New certificate.
- Fix crash in the result view when the number of replications was very large.
- Simulation: Fix failure interval on sinks.
- Fix crash when making new links when the model was loaded in the animation view.
- Optimization: Changed order of initial and random solutions
- Random solutions are now added after the initial ones (i.e. get larger iteration numbers) instead of before them.
- Applied when initial solutions are too few to make out an entire population.
Version 2.2.14 (2013-12-20)
- Loading large models is now faster.
- Switching views is now faster.
- Switching flows is now faster.
- Simulation: Fix bug where sources with a number limit was not reset properly.
Version 2.2.13 (2013-12-19)
- Animation: Don't disable the controls when a simulation error is encountered. Fixes a crash that occurred when interacting with the animation after an error.
Version 2.2.12 (2013-11-29)
- Simulation: Fix batch sit does not create more batches than there are demand for.
- Simulation: Fix bug that prevented max wip and critical wip from working when placed in a template.
- Simulation: Movable units that enter a max wip but do not leave through the exit node on the max wip are now properly handled.
- Simulation: Assembly now adds wip time to movable units that was deleted on assembly.
- Simulation: Disruption events have now lower priority than out events.
- Simulation: Round instead of truncate when calculating the safety limit on stores.
- Animation: Fix the updating of max wip and critical wip contents.
Version 2.2.11 (2013-11-19)
- Simulation, Animation: Fix crash when a store was connected to critical wip.
Version 2.2.10 (2013-11-18)
- Fixed edit-zoom crash. Disabled zoom while an object is in edit mode, e.g. when its name is being changed.
- Fixed change flow crash after a relink-deletion was made. Relink-deletion = deleting a link by relinking it to the model canvas (not to an object).
Version 2.2.9 (2013-11-08)
- Improved error handling for save model. If something goes wrong the model will be saved as filename+"_error.xml", instead of overwriting the last successful save.
- Improved error handling for tables and distributions.
- Improved error handling for simulation settings, i.e. Simulation horizon, Warm-up Time and Replications.
- Simulation settings are now reset to default values when you start a new model.
- Fixed issue with the validation of optimization input variables. Previously the validation of optimization input variables could prevent the error log from updating correctly.
Version 2.2.8 (2013-11-06)
- Animation now works in template and selection objects.
- Reset optimization settings when starting a new model.
- Prevent editing the model in the animation view.
Version 2.2.7 (2013-11-01)
- Fixed crash that occurred when a node used a table for specifying processing times and a variant entered that was not present in the table.
Version 2.2.6 (2013-10-25)
- Fixed bug that prevented execution of single experiments when the model contained objectives with inputs used in the formula.
- Deletion of an object will now cause any optimization input variables based on that object to be deleted.
- Constants are now displayed as number instead of "distributions", e.g. 1:00 instead of constant(1:00).
- Added support for distributions per variant, both for process times as well as setup times.
- Fixed bug with setup tables. Columns were treaded as 'from' and rows as 'to' instead of the other way around which is the correct way. This fix will only have an effect for models with asymmetric setup tables.
Version 2.2.5 (2013-10-23)
- Simulation: Fix issue where the simulation could get stuck if a takt was empty.
- Simulation: Fix issue in the buffer object that could lead to a crash.
- Fix crash when exiting facts.
Version 2.2.4 (2013-10-14)
- Simulation: Fix issue with max occupation on assembly objects where it could be used uninitialized under some circumstances.
- Simulation: Fix issue with the store object where variants that had been blocked could be moved in the wrong order.
- Simulation: When the variant creation on a source object is limited to a specific number of variants, it now generates all variants at the start of the simulation from the interval distribution. For example, if the interval is set to constant(10) and limit set to 5, then five variants are created at simulation time 10. The same functionality applies to demand objects.
- Fix crash on startup if the tcp/ip loop back port was not available.
Version 2.2.3 (2013-10-09)
- Fix issue which caused the time table to not work properly.
Version 2.2.2 (2013-10-08)
- Fix issue where OptimiseBrowser2 would become unresponsive if a user note were set.
Version 2.2.1 (2013-10-08)
- Fix issue where the simulation was not initialized properly when performing a steady state analysis.
- Add store objects in the steady state analysis.
Version 2.2.0 (2013-10-08)
Simulation: Increased the performance of the store object, it is especially noticeable when the size of the store is large.
- Fixed crash when viewing the 4D chart while running an optimization.
- Fixed issue where Facts could become unresponsive when the database was stored on a network disk.
- New way of routing assemblies.
- Attribute Type of Variants have been removed and replaced by Assembly identity in the Assembly tables of the Assembly stations.
- Variant dependent processing times and setup times are now connected to the Assembly identity.
- Option to delete parts of an assembly, i.e. instead of mounting a part on the container it is deleted.
- These changes required updates to the XML-schema. Models with assembly tables created in earlier versions will need manual updates, i.e. the Assembly identity need to be set. The lack of Assembly identities will be shown as errors in the log until fixed.
Version 2.1.10 (2013-10-02)
- Updated OptimiseBrowser2 version 2.1.7.
- Don't allow animation when the model has errors.
- Close the settings form and event list form when the animation view loses focus.
- Clear node states when the animation loses focus while simulating.
- Prevent error while saving caused by a bug when fetching nodes from CustomNodes within Selections.
- Prevent error when saving an assembly table with variant that has been deleted.
Version 2.1.9 (2013-09-13)
- Fixed crash in the Shifts editor and issue with start/end times of shifts being changed.
- Added error detection for overlapping of shifts.
Version 2.1.8 (2013-09-10)
- Fixed crash that sometimes happened during animation.
- Updated OptimiseBrowser2 version 2.1.6.
- Added support for 24:00 as end time in shift.
- Zero interval for demands is now logged as error.
- Multiple exits from critical wip is no longer allowed.
- Only allow constant processes times on buffers.
- Disabled multi-select of ActiveNum in selections.
- SST on object missing setup time is logged as an error.
- SST not available for objects without setup time attribute.
Version 2.1.7 (2013-08-28)
- Added option to set the location of the database, it is automatically set to "c:\facts" on first start, if that is not writable "My documents\facts" is tried instead.
- Fixed a problem with a time zone mismatch, which resulted in incorrect timestamps.
- Updated OptimiseBrowser2 version 2.1.5.
Version 2.1.6 (2013-08-19)
- Distributed: Use the web service by default.
Version 2.1.5
- Removed the expired date that was set to July 31, 2013.
Version 2.1.4
- Updated OptimiseBrowser2 to version 2.1.3.
Version 2.1.3
- Updated to .NET 4.
- Updated OptimseBrowser2.
Version 2.1.2
- Fixed a problem that prevented the help from showing up.
Version 2.1.1
- Fix missing files problem.
Version 2.1.0
- Animation: Set settings and event list windows to be always on top.
- Animation: Place the settings window in the lower left and the event list in the lower right.
- Modeling: Allow nodes in a selection to have a timetable.
- Modeling: Add note node.
- Simulation engine: Fix bug where breaks was not properly scheduled after the first week.
- Simulation engine: Fix bug that caused nodes in a selection to ignore its timetable.
- Simulation engine: Fix crash when unselected nodes in a selection had a timetable.
Version 2.0 (2011-09-07)
- added: Support for multiple variants along with variant routing by allowing multiple production flows.
- added: New Assembly and Disassembly nodes that together with multiple variants allows complex assembly and disassembly lines to be modeled.
- added: New Store node that serves as a special type of buffer in which overtakes are allowed and also enables precise capacity management for multiple variants. Very useful in combination with the new Batch logic.
- added: New Selection node making scenario modeling a lot easier. Extremely useful in production improvement optimization problems.
- added: Flow Selection enabling an evaluation of how different variant routes will effect the production performance of ones line/factory. A feature very suitable for use in complex optimization problems.
- added: New Demand logic that for instance will enable realistic modeling of a FGI (Finish Goods Inventory) that should meet customer demand.
- added: New Batch logic that will group the variants in the production flow in desired batch sizes at operations where this logic is applied. Could, when combined with a Store node, create batches with respect safety stock levels in the Store.
- improved: Started the implementation of a new user interface with a shorter work flow and easier data input.
- improved: Shifting bottleneck detection is faster and will not impact the simulation time as much as the previous implementation.